#!/usr/bin/env python3
# -*- coding: utf-8 -*-

"""
窗口事件处理器模块

该模块包含处理窗口事件相关功能的类和方法，主要负责：
1. 处理窗口关闭事件
"""


class WindowEventHandler:
    """窗口事件处理器类"""

    def __init__(self):
        """初始化窗口事件处理器"""
        pass

    def closeEvent(self, main_window, event):
        """
        窗口关闭事件处理
        
        Args:
            main_window: 主窗口实例
            event: 关闭事件
        """
        # 释放资源
        if hasattr(main_window, 'ffmpeg_player') and main_window.ffmpeg_player:
            main_window.ffmpeg_player.stop()
        
        if hasattr(main_window, 'video_processor') and main_window.video_processor:
            main_window.video_processor.release()
        
        event.accept()